Method and apparatus for controlling vibration

ABSTRACT

A method and apparatus for controlling vibration in a portable device are provided. The method includes detecting a user input corresponding to a gesture made on a touch screen by an input device, detecting an action attribute of the portable device corresponding to the user input, determining a first vibration to be output from the input device and a second vibration to be output from the portable device according to the action attribute, and controlling output of the first vibration from the input device and output of the second vibration from the portable device according to the action attribute.

PRIORITY

This application claims priority under 35 U.S.C. §119(a) to a KoreanPatent Application filed in the Korean Intellectual Property Office onMay 21, 2013 and assigned Serial No. 10-2013-0057328, the entiredisclosure of which is incorporated herein by reference.

BACKGROUND

1. Field of the Invention

The present invention generally relates to a portable device, and moreparticularly, to a method and apparatus for controlling vibration in aportable device and an input device.

2. Description of the Related Art

Portable devices have recently provided more and more services andadditional functions. In order to increase the utility of portabledevices and satisfy various user demands, a variety of applications havebeen developed for the portable devices.

Portable devices, such as a smart phone or a tablet Personal Computer(PC), are capable of storing a large number of such applications.Shortcut keys are displayed in the form of icons on the touch screen ofa portable device to execute the individual applications. A user canexecute an intended application in the portable device by touching oneof the displayed icons. In addition to the shortcut keys, various visualobjects including widgets, photos, and text are displayed on the touchscreen of the portable device.

Information is input to the portable device by touching the displayedobjects using an input device such as a user's finger, an electronicpen, a stylus pen, or the like.

An input can be applied by hovering the input device over the touchscreen in a non-contact manner as well as directly touching the touchscreen in the portable device. Thus a user-friendly User Interface (UI)is provided.

Recently, a portable device has been configured so as to generatevibration upon receipt of a touch input on a touch screen, in order toprovide a feeling to a user that simulates pressing a button. Researchhas been made on various touch input techniques to satisfy user demandsfor new, pleasant multi-sense interfaces.

As described above, in the related art when a user manipulates aportable device, the portable device provides vibration to the userthrough a touch screen so as to given a sense of manipulation to theuser. With this scheme, the user may only feel a touch of an inputdevice on the touch screen, without a real feeling of using anapplication. Accordingly, there is a need for providing an improved UIinput device to satisfy increasing user demands for a touch input of aninput device beyond a simple role of selecting an object displayed on atouch screen.

SUMMARY

The present invention has been made to address at least theabove-mentioned problems and/or disadvantages and to provide at leastthe advantages described below. Accordingly, an aspect of the presentinvention is to provide a method and apparatus for, when a usermanipulates a User Interface (UI) in a portable device equipped with atleast one touch screen, organically generating vibration between aninput device and the portable device.

In accordance with an aspect of the present invention, there is provideda method for controlling vibration in a portable device. The methodincludes detecting a user input corresponding to a gesture made on atouch screen by an input device, detecting an action attribute of theportable device corresponding to the user input, determining a firstvibration to be output from the input device and a second vibration tobe output from the portable device according to the action attribute,determining generation times of the first and second vibrationsaccording to the action attribute, and controlling output of the firstvibration from the input device and output of the second vibration fromthe portable device according to the action attribute.

In accordance with another aspect of the present invention, there isprovided a portable device. The portable device includes a touch screenconfigured to display at least one object under the control of acontroller, a communication module configured to conduct short-rangecommunication with an input device under the control of the controller,and the controller configured to detect a user input corresponding to agesture made on the touch screen by the input device, to detect anaction attribute of the portable device corresponding to the user input,to determine a first vibration to be output from the input device and asecond vibration to be output from the portable device according to theaction attribute, to determine generation times of the first and secondvibrations according to the action attribute, to control output of thefirst vibration from the input device by transmitting a control signalcorresponding to the first vibration to the input device according tothe attribute action through the communication module, and to controloutput of the second vibration from the portable device according to theaction attribute.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features and advantages of certainembodiments of the present invention will be more apparent from thefollowing description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 is a block diagram of a portable device according to anembodiment of the present invention;

FIG. 2 is a front perspective view of a portable device according to anembodiment of the present invention;

FIG. 3 is a rear perspective view of a portable device according to anembodiment of the present invention;

FIG. 4 illustrates an input unit for providing a vibration effect and aninterior section of a touch screen according to an embodiment of thepresent invention;

FIG. 5 is a block diagram of an input unit according to an embodiment ofthe present invention;

FIGS. 6, 7, and 8 are flowcharts illustrating operations of a portabledevice, upon execution of a game application, according to embodimentsof the present invention;

FIGS. 9A, 9B, 10A, 10B, 11A, 11B, and 12 illustrate execution screens ofgame applications according to embodiments of the present invention;

FIG. 13 is a flowchart illustrating an operation of a portable deviceupon execution of an image application according to an embodiment of thepresent invention;

FIGS. 14A and 14B illustrate execution screens of an image applicationaccording to an embodiment of the present invention;

FIG. 15 is a flowchart illustrating an operation of a portable deviceupon execution of an image application according to an embodiment of thepresent invention;

FIGS. 16A and 16B illustrate execution screens of an image applicationaccording to an embodiment of the present invention;

FIG. 17 illustrates a method for providing a feedback in a portabledevice according to an embodiment of the present invention;

FIGS. 18 and 19 are flowcharts illustrating operations of a portabledevice upon execution of a drawing application according to embodimentsof the present invention;

FIGS. 20A and 20B illustrate execution screens of a drawing applicationaccording to an embodiment of the present invention;

FIG. 21 is a flowchart illustrating an operation of a portable deviceupon execution of a map application according to an embodiment of thepresent invention;

FIGS. 22A and 22B illustrate execution screens of a map applicationaccording to an embodiment of the present invention; and

FIGS. 23 and 24 illustrate vibration waveforms according to anembodiment of the present invention.

Throughout the drawings, like reference numerals will be understood torefer to like parts, components, and structures.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE PRESENT INVENTION

The following description with reference to the accompanying drawings isprovided to assist in a comprehensive understanding of embodiments ofthe invention as defined by the claims and their equivalents. Itincludes various specific details to assist in that understanding butthese are to be regarded as mere examples. Accordingly, those ofordinary skilled in the art will recognize that various changes andmodifications of the embodiments described herein can be made withoutdeparting from the scope and spirit of the invention. In addition,descriptions of well-known functions and constructions may be omittedfor clarity and conciseness.

The terms and words used in the following description and claims are notlimited to their dictionary meanings, but are merely used to enable aclear and consistent understanding of the invention. Accordingly, itshould be apparent to those skilled in the art that the followingdescription of embodiments of the present invention is provided forillustration purpose only and not for the purpose of limiting theinvention as defined by the appended claims and their equivalents.

It is to be understood that the singular forms “a,” “an,” and “the”include plural referents unless the context clearly dictates otherwise.Thus, for example, reference to “a component surface” includes referenceto one or more of such surfaces.

By the term “substantially” it is meant that the recited characteristic,parameter, or value need not be achieved exactly, but that deviations orvariations, including for example, tolerances, measurement error,measurement accuracy limitations and other factors known to those ofskill in the art, may occur in amounts that do not preclude the effectthe characteristic was intended to provide.

The present invention provides an organic vibration feedback between aportable device equipped with a touch screen and an input device, when auser input is applied to the touch screen of the portable device throughthe input device.

According to the present invention, upon detection of a user inputcorresponding to a gesture made on the touch screen by the input device,the portable device detects an action attribute of the portable devicecorresponding to the user input, determines a first vibration to beoutput from the input device and a second vibration to be output fromthe portable device according to the action attribute, and controlsoutput of the respective first and second vibrations from the inputdevice and the portable device, respectively.

The action attribute includes application information related to anapplication that is being executed when the user input is detected, forexample, state information related to a progress of the application. Theaction attribute may also include a command corresponding to the userinput in relation to the progress state of the application at the momentthe user input is detected.

An example of a portable device to which the present invention isapplied is illustrated in FIG. 1. FIG. 1 is a block diagram of aportable device according to an embodiment of the present invention.

Referring to FIG. 1, the portable device 100 may be connected to anexternal device through at least one of a mobile communication module120, a sub-communication module 130, a connector 165, and an earphoneconnector jack 167. The term “external device” covers a variety ofdevices that can be detachably connected to the portable device 100 bywire, such as an earphone, an external speaker, a Universal Serial Bus(USB) memory, a charger, a cradle, a docking station, a DigitalMultimedia Broadcasting (DMB) antenna, a mobile payment device, a healthcare device (for example, a blood sugar meter, etc.), a game console, avehicle navigator, and the like. The external device may also include adevice wirelessly connectable to the portable device 100 by short-rangecommunication, such as a Bluetooth communication device, a Near FieldCommunication (NFC) device, a Wireless Fidelity (WiFi) Directcommunication device, a wireless Access Point (AP), and the like. Inaddition, the portable device may be connected to another device by wireor wirelessly, such as a portable phone, a smartphone, a tablet PersonalComputer (PC), a desktop PC, a server, and the like.

Referring to FIG. 1, the portable device 100 includes at least one touchscreen 190 and at least one touch screen controller 195. The portabledevice 100 further includes a controller 110, the mobile communicationmodule 120, the sub-communication module 130, a multimedia module 140, acamera module 150, a Global Positioning System (GPS) module 157, anInput/Output (I/O) module 160, a sensor module 170, a memory 175, and apower supply 180.

The sub-communication module 130 includes at least one of a WirelessLocal Area Network (WLAN) module 131 and a short-range communicationmodule 132, and the multimedia module 140 includes at least one of abroadcasting communication module 141, an audio play module 142, and avideo play module 143. The camera module 150 includes at least one of afirst camera 151 and a second camera 152. In the portable device 100 ofthe present invention, the camera module 150 may include at least one ofa barrel 155 for zooming in or zooming out the first camera 151 and/orthe second camera 152, a motor 154 for controlling movement of thebarrel 155 for zoom-in or zoom-out, and a flash 153 for providing alight source to capture an image. The I/O module 160 includes at leastone of buttons 161, a microphone 162, a speaker 163, a vibration motor164, the connector 165, and a keypad 166.

The controller 110 may include a Central Processing Unit (CPU) 111, aRead Only Memory (ROM) 112 for storing a control program to control theportable device 100, and a Random Access Memory (RAM) 113 for storingsignals or data received from the outside of the portable device 100 orfor use as a memory space for an operation performed by the portabledevice 100. The CPU 111 may include one or more cores. The CPU 111, theROM 112, and the RAM 113 may be interconnected through an internal bus.

The controller 110 controls the mobile communication module 120, thesub-communication module 130, the multimedia module 140, the cameramodule 150, the GPS module 157, the I/O module 160, the sensor module170, the memory 175, the power supply 180, the touch screen 190, and thetouch screen controller 195.

With a plurality of objects displayed on the touch screen 190, thecontroller 110 detects a user input on the touch screen 190,corresponding to a gesture made by a touch input device 168 such as anelectronic pen. In an embodiment of the present invention, the userinput corresponding to the gesture of the input device 168 may include atouch input created by directly touching the touch screen 190 and ahovering input created by hovering the input device 168 above the touchscreen 190.

With a plurality of objects displayed on the touch screen 190, thecontroller 110 determines whether the touch input device 168 such as anelectronic pen has approached an object and has hovered above the objectand identifies the object corresponding to the position of the hovering.Further, the controller 110 determines the height of the input device168 above the portable device 100 and sense a hovering input eventaccording to the height. The hovering input event includes at least oneof pressing of a button formed in the input device 168, a tap of theinput device 168, faster movement of the input device 168 than apredetermined speed, and a touch on an object. A different vibrationpattern may be set according to the distance between the input device168 and the touch screen 190. Distances for which different vibrationpatterns are set may vary. Upon generation of a hovering input event,the controller 110 may display a predetermined hovering input effectcorresponding to the hovering input event on the touch screen 190.

The controller 110 detects an action attribute corresponding to a userinput. The action attribute includes at least one of applicationinformation related to a progress state of an application that is beingexecuted when the user input is applied to the portable device 100, anda command corresponding to the user input. The application informationincludes at least one of identification information about the ongoingapplication, state information about the application in relation to theprogress of the application, and information about an object selected bythe user input from among at least one object displayed on the touchscreen 190 along with the progress of the application. The commandgenerated by the user input may be determined according to the type andprogress state of the ongoing application or the selected object.

The controller 110 determines a first vibration to be output from theinput device 168 or a second vibration to be output from the portabledevice 100 according to the attribute action detected corresponding tothe touch input or the hovering input of the input device 168,determines generation times of the first and second vibrations to beoutput from the input device 168 and the portable device 100, andcontrols output of the first and second vibrations. Specifically, thecontroller 110 controls output of the first vibration from the inputdevice 168 by transmitting a control signal corresponding to the firstvibration to the input device 168 at a determined time point accordingto the action attribute. In addition, the controller 110 controls outputof the second vibration from the portable device 100 by controlling avibration motor 164 according to the action attribute, so that thevibration motor 164 may generate the second vibration at a determinedtime point.

For example, after the input device 168 generates the first vibration,the controller 110 may control generation of the second vibration fromthe portable device 100 according to the action attribute.Alternatively, after the portable device 100 generates the secondvibration, the controller 110 may also control generation of the firstvibration from the input device 168 according to the action attribute.The controller 110 may also control simultaneous generation of the firstvibration and the second vibration from the input device 168 and theportable device 100.

Since each of the two devices generates vibration organically inresponse to a user input, a user may feel a realistic sense ofmanipulation.

The mobile communication module 120 may connect the portable device 100to an external device through one or more antennas by mobilecommunication under the control of the controller 110. The mobilecommunication module 120 transmits wireless signals to or receiveswireless signals from a portable phone, a smart phone, a tablet PC, oranother electronic device that has a phone number input to the portabledevice 100, for a voice call, a video call, a Short Message Service(SMS), or a Multimedia Messaging Service (MMS).

The sub-communication module 130 includes at least one of the WLANmodule 131 and the short-range communication module 132. For example,the sub-communication module 130 may include either or both of the WLANmodule 131 and the short-range communication module 132.

The WLAN module 131 may be connected to the Internet under the controlof the controller 110 in a place where a wireless AP is installed. TheWLAN module 131 supports the WLAN standard IEEE802.11x of the Instituteof Electrical and Electronics Engineers (IEEE). The short-rangecommunication module 132 conducts short-range wireless communicationbetween the portable device 100 and an image forming device under thecontrol of the controller 110. The short-range communications scheme mayconform to Bluetooth, Infrared Data Association (IrDA), WiFi Direct,Near Field Communication (NFC), and the like.

The controller 110 transmits a control signal for vibration to the inputdevice 168 through at least one of the WLAN module 131 and theshort-range communication module 132 of the sub-communication module130.

The portable device 100 includes at least one of the mobilecommunication module 120, the WLAN module 131, and the short-rangecommunication module 132 according to its capabilities. For example, theportable device 100 may include a combination of the mobilecommunication module 120, the WLAN module 131, and the short-rangecommunication module 132. In the present invention, at least one or acombination of two or more of the mobile communication module 120, theWLAN module 131, and the short-range communication module 132 isreferred to as a transceiver, which should not be construed as limitingthe scope of the present invention.

The multimedia module 140 includes the broadcasting communication module141, the audio play module 142, or the video play module 143. Thebroadcasting communication module 141 may receive a broadcast signal(for example, a TV broadcast signal, a radio broadcast signal, a databroadcast signal, etc.) and additional broadcasting information (forexample, an Electronic Program Guide (EPG), Electronic Service Guide(ESG), etc.) from a broadcasting station through a broadcastingcommunication antenna under the control of the controller 110. The audioplay module 142 may open a stored or received digital audio file (forexample, a file having such an extension as mp3, wma, ogg, or way) underthe control of the controller 110. The video play module 143 may open astored or received digital video file (for example, a file having suchan extension as mpeg, mpg, mp4, avi, mov, or mkv) under the control ofthe controller 110. The video play module 143 may also open a digitalaudio file.

The multimedia module 140 may include the audio play module 142 and thevideo play module 143 without the broadcasting communication module 141.One or both of the audio play module 142 and the video play module 143of the multimedia module 140 may be incorporated into the controller110.

The camera module 150 includes at least one of the first camera 151 andthe second camera 152, for capturing a still image or a video under thecontrol of the controller 110. The camera module 150 may include atleast one of the barrel 155 for zooming in or zooming out the firstcamera 151 and/or the second camera 152, the motor 154 for controllingmovement of the barrel 155 for zoom-in or zoom-out, and the flash 153for providing a light source to capture an image. The first camera 151may be disposed on the front surface of the portable device 100, whilethe second camera 152 may be disposed on the rear surface of theportable device 100. Alternatively, the first camera 151 and the secondcamera 152 may be arranged near to each other (for example, the distancebetween the first camera 151 and the second camera 152 is between 1 cmand 8 cm) in order to capture a three-dimensional still image or video.

Each of the first and second cameras 151 and 152 may include a lenssystem and an image sensor. The first and second cameras 151 and 152convert optical signals received through (or captured by) the lenssystems to electrical image signals and output the electrical imagesignals to the controller 110. The user may capture a video or a stillimage using the first and second cameras 151 and 152.

The GPS module 157 receives radio waves from a plurality of GPSsatellites in the Earth's orbit and determines a position of theportable device 100 based on the Time of Arrivals (ToAs) of satellitesignals from the GPS satellites to the portable device 100.

The I/O module 160 may include at least one of the plurality of buttons161, the microphone 162, the speaker 163, the vibration motor 164, theconnector 165, and the keypad 166, to which the I/O module 160 is notlimited. A cursor control such as a mouse, a trackball, a joystick, orcursor directional keys may be provided for communication with thecontroller and for control of cursor movement on the touch screen 190.

The buttons 161 may be formed on the front surface, a side surface, orthe rear surface of a housing of the portable device 100, and mayinclude at least one of a power/lock button, a volume button, a menubutton, a home button, a back button, a search button, etc.

The microphone 162 receives a voice or a sound and converts the receivedvoice or sound to an electrical signal under the control of thecontroller 110.

The speaker 163 outputs sounds corresponding to various signals (forexample, a wireless signal, a broadcast signal, a digital audio file, adigital video file, a photo shot, etc.) received from the mobilecommunication module 120, the sub-communication module 130, themultimedia module 140, and the camera module 150 and a soundcorresponding to a control signal transmitted to the input device 168 byBluetooth to the outside of the portable device 100 under the control ofthe controller 110. The sound corresponding to the control signalincludes a sound related to activation of a vibration device 520 (SeeFIG. 5), a sound having a variable volume according to a vibrationstrength, and a sound related to deactivation of the vibration device520. The volume of the sound may be controlled according to thevibration strength of the vibration device 520 in the input device 168,or the sound may be output through the speaker 163 of the portabledevice 100 and/or a speaker (not shown) that may be provided in theinput device 168, simultaneously with activation of the vibration device520 or within a predetermined time (for example, 10 ms) before or afteractivation of the vibration device 520. The sound may end simultaneouslywith deactivation of the vibration device 520 or a predetermined time(for example, 10 ms) before or after deactivation of the vibrationdevice 520. The speaker 163 may output sounds corresponding to functions(for example, a button manipulation sound, a ringback tone for a call,etc.) performed by the portable device 100. One or more speakers 163 maybe disposed at an appropriate position or positions of the housing ofthe portable device 100.

The vibration motor 164 converts an electrical signal to a mechanicalvibration under the control of the controller 110. For example, when theportable device 100 receives an incoming voice call from another device(not shown) in vibration mode, the vibration motor 164 operates. One ormore vibration motors 164 may be mounted inside the housing of theportable device 100. The vibration motor 164 may operate in response toa user's touch on the touch screen 190 and a continuous movement of thetouch on the touch screen 190.

The connector 165 may be used as an interface for connecting theportable device 100 to an external device or a power source. Theconnector 165 may transmit data stored in the memory 175 to the externaldevice via a cable connected to the connector 165 or may receive datafrom the external device via the cable, under the control of thecontroller 110. The portable device 100 receives power or charge abattery from the power supply via the cable connected to the connector165.

The keypad 166 receives a key input from the user to control theportable device 100. The keypad 166 includes a physical keypad formed inthe portable device 100 or a virtual keypad displayed on the touchscreen 190. The physical keypad may or may not be provided according tothe capabilities or configuration of the portable device 100.

An earphone may be connected to the portable device 100 by beinginserted into the earphone connector jack 167. The input device 168 maybe inserted and kept inside the portable device 100, as shown in FIG. 3.When the input device 168 is used, it may be extended or removed fromthe portable device 100. An insertion/removal sensing switch 169 isprovided in an internal area of the portable device 100 into which theinput device 168 is inserted, in order to operate in response toinsertion and removal of the input device 168. The insertion/removalsensing switch 169 outputs signals corresponding to insertion andremoval of the input device 168 to the controller 110. Theinsertion/removal sensing switch 169 may be configured so as to directlyor indirectly contact the input device 168, when the input device 168 isinserted. Therefore, the insertion/removal sensing switch 169 outputs,to the controller 110, a signal corresponding to insertion or removal ofthe input device 168 depending on whether the insertion/removal sensingswitch 169 contacts the input device 168 directly or indirectly.

The sensor module 170 includes at least one sensor for detecting a stateof the portable device 100. For example, the sensor module 170 mayinclude a proximity sensor for detecting whether the user is close tothe portable device 100, an illumination sensor for detecting the amountof ambient light around the portable device 100, a motion sensor fordetecting a motion of the portable device 100 (for example, rotation,acceleration, vibration, etc. of the portable device 100), a geomagneticsensor for detecting a point of the compass using the Earth's magneticfield, a gravity sensor for detecting the direction of gravity, analtimeter for detecting an altitude by measuring the air pressure, andthe like. At least one sensor detects a state of the portable device100, generates a signal corresponding to the detected state, andtransmits the generated signal to the controller 110. A sensor may beadded to or removed from the sensor module 170 according to thecapabilities of the portable device 100.

The memory 175 stores input/output signals or data in accordance withoperations of the mobile communication module 120, the sub-communicationmodule 130, the multimedia module 140, the camera module 150, the GPSmodule 155, the I/O module 160, the sensor module 170, and the touchscreen 190 under the control of the controller 110. The memory 175stores a control program for controlling the portable device 100 or thecontroller 110, and applications.

The term “memory” may include the memory 175, the ROM 112 and the RAM113 within the controller 110, or a memory card (for example, a SecureDigital (SD) card, a memory stick, etc.) mounted to the portable device100. The memory may also include a non-volatile memory, a volatilememory, a Hard Disk Drive (HDD), a Solid State Drive (SSD), and thelike.

The memory 175 stores applications having various functions such asnavigation, video call, game, and time-based alarm applications, imagesused to provide Graphical User Interfaces (GUIs) related to theapplications, user information, text, databases or data related to amethod of processing a touch input, background images (for example, amenu screen, a waiting screen, and the like) or operation programsrequired to operate the portable device 100, and images captured by thecamera module 150.

For each application, the memory 175 stores information related tovibration to be generated from the portable device 100 or the inputdevice 168 according to the progress state of the application, a userinput, or a command corresponding to the user input.

The memory 175 may be a machine-readable medium (for example, acomputer-readable medium). The machine-readable medium may be defined asa medium that provides data to a machine so that the machine may performa specific function. For example, the machine-readable medium may be astorage medium. The memory 175 may include a non-volatile medium and avolatile medium. All these media should be of a type providing commandsdetectable by a physical device that reads commands to a machine.

The machine-readable medium includes, but not limited to, at least oneof a floppy disk, a flexible disk, a hard disk, a magnetic tape, aCompact Disk Read Only Memory (CD-ROM), an optical disk, a punch card, apaper tape, a RAM, a Programmable ROM (PROM), an Erasable PROM (EPROM),and a Flash-EPROM.

The power supply 180 supplies power to one or more batteries mounted inthe housing of the portable device 100 under the control of thecontroller 110. The one or more batteries supply power to the portabledevice 100. Further, the power supply 180 supplies power received froman external power source via the cable connected to the connector 165 tothe portable device 100. The power supply 180 may also supply powerreceived wirelessly from an external power source to the portable device100 by a wireless charging technology.

The portable device 100 includes at least one touch screen 190 forproviding User Interfaces (UIs) corresponding to various services (forexample, call, data transmission, broadcasting, photography, etc.) tothe user. Each touch screen 190 transmits an analog signal correspondingto at least one touch on a UI to a touch screen controller 195corresponding to the touch screen 190. The portable device 100 may beprovided with a plurality of touch screens 190 and touch screencontrollers 195 which receive an analog signal corresponding to a touchfrom the respective touch screens 190. The touch screens 190 may beconnected respectively to a plurality of housings by hinges or to onehousing without a hinge connection. For the convenience of description,the following description is given in the context of a single touchscreen.

The touch screen 190 may receive at least one touch input through auser's body part (for example, a finger) or a touch input tool (forexample, a stylus pen or an electronic pen). The touch screen 190 mayinclude a pen recognition panel 191 that recognizes an input of a pensuch as a stylus pen or an electronic pen. The pen recognition panel 191may determine the distance between the pen and the touch screen 190 by amagnetic field. The touch screen 190 may receive a continuous movementof a single touch, among one or more touches. The touch screen 190 maytransmit an analog signal corresponding to a continuous movement of atouch to the touch screen controller 195.

In the present invention, the touch may include a non-contact touch (forexample, where a detectable gap between the touch screen 190 and theuser's body part or the input device 168 is about 5 mm), and is notlimited to contacts between the touch screen 190 and the user's bodypart or the input device 168. The detectable gap to the touch screen 190may vary according to the capabilities or configuration of the portabledevice 100. Particularly, to distinguish a touch event generated bycontact between the touch screen 190 and a user's body or the inputdevice 168 from a non-contact input event (for example, a hoveringevent), the touch screen 190 may output different detection values (forexample, different analog voltage or current values) for the touch eventand the hovering event. Further, the touch screen 190 may output adifferent detection value (for example, a different current value)according to the distance between an area of a hovering event and thetouch screen 190.

The touch screen 190 may be implemented as, for example, a resistivetype, a capacitive type, an infrared type, or an acoustic wave type.

To receive an input of the user's body and an input of the input device168 simultaneously or sequentially, the touch screen 190 may include atleast two touch screen panels that sense touches or proximity of theuser's body and the input device 168, respectively. The at least twotouch screen panels provide different output values to the touch screencontroller 195 and the touch screen controller 195 determines whether aninput from the touch screen 190 is an input of the user's body or aninput of the input device 168 by distinguishing values received from theat least two touch screen panels.

More specifically, the touch screen 190 may be configured by stacking apanel to sense an input of a finger or the input device 168 by a changein inducted power and a panel to sense contact of a finger or the inputdevice 168 on the touch screen 190, in close contact with each other orpartially apart from each other. This touch screen 190 includes a largenumber of pixels to display an image. The touch screen 190 may includeat least one of a Liquid Crystal Display (LCD) panel, an Organic LightEmitting Diode (OLED) display, or an LED display.

The touch screen 190 includes a plurality of sensors to sense theposition of a finger or the input device 168 that touches the touchscreen 190 or is spaced from the touch screen 190 by a predetermineddistance. Each of the sensors may have a coil structure. In a sensorlayer formed by the plurality of sensors, each sensor has apredetermined pattern and a plurality of electrode lines are formed.Thus, when a finger or the input device 168 touches or hovers above thetouch screen 190, a sensing signal having a changed waveform isgenerated due to the capacitance between the sensor layer and the inputmeans. The touch screen 190 transmits the sensing signal to thecontroller 110. The distance between the input device 168 and the touchscreen 190 may be determined based on the strength of a magnetic fieldformed by a coil, such as coil 510 of FIG. 5, of the input device 168.

The touch screen controller 195 converts an analog signal received fromthe touch screen 190 to a digital signal (X and Y coordinates) andtransmits the digital signal to the controller 110. The controller 110controls the touch screen 190 using the received digital signal. Forexample, the controller 110 may select or execute a shortcut icon or anobject displayed on the touch screen 190 in response to a touch event ora hovering event. The touch screen controller 195 may be incorporatedinto the controller 110.

Further, the touch screen controller 195 determines the distance betweena hovering input area and the touch screen 190 by detecting a value (forexample, a current value) output from the touch screen 190, converts thedistance to a digital signal (for example, a Z coordinate), and providesthe digital signal to the controller 110.

FIGS. 2 and 3 are front and rear perspective views of a portable devicerespectively according to an embodiment of the present invention.

Referring to FIGS. 2 and 3, the touch screen 190 is disposed at thecenter of the front surface 100 a of the portable device 100, occupyingalmost the entirety of the front surface 100 a. In FIG. 2, a main homescreen is displayed on the touch screen 190, by way of example. The mainhome screen is the first screen to be displayed on the touch screen 190,when the portable device 100 is powered on. In the case where theportable device 100 has different home screens of a plurality of pages,the main home screen may be the first of the home screens of theplurality of pages. Shortcut icons 191-1, 191-2 and 191-3 for executingfrequently used applications, a main menu switch key 191-4, the time,the weather, and the like may be displayed on the home screen. A statusbar 192 may be displayed at the top of the touch screen 190 in order toindicate states of the portable device 100 such as a battery chargedstate, a received signal strength, and a current time.

A home button 161 a, a menu button 161 b, and a back button 161 c may beformed at the bottom of the touch screen 190.

The home button 161 a is used to display the main home screen on thetouch screen 190. For example, upon touching of the home button 161 awhile any home screen other than the main home screen or a menu screenis displayed on the touch screen 190, the main home screen may bedisplayed on the touch screen 190. Upon touching of the home button 161a during execution of applications on the home screen 190, the main homescreen illustrated in FIG. 2 may be displayed on the touch screen 190.The home button 161 a may also be used to display recently usedapplications or a task manager on the touch screen 190.

The menu button 161 b provides link menus available on the touch screen190. The link menus may include a widget adding menu, a backgroundchanging menu, a search menu, an edit menu, an environment setting menu,and the like.

The back button 161 c is used to display a screen previous to a currentscreen or end the latest used application.

The first camera 151, an illumination sensor 170 a, and a proximitysensor 170 b may be arranged at a corner of the front surface 100 a ofthe portable device 100, whereas the second camera 152, the flash 153,and the speaker 163 may be arranged on the rear surface 100 c of theportable device 100.

A power/reset button 161 d, a volume button 161 e, including a volume upbutton 161 f and a volume down button 161 g, a terrestrial DMB antenna141 a for receiving a broadcast signal, and one or more microphones 162may be disposed on side surfaces 100 b of the portable device 100. TheDMB antenna 141 a may be mounted to the portable device 100 fixedly ordetachably.

The connector 165 is formed on the bottom side surface of the portabledevice 100. The connector 165 includes a plurality of electrodes and maybe connected to an external device by wire. The earphone connector jack167 may be formed on the top side surface of the portable device 100,for allowing an earphone to be inserted. The earphone connector jack 167may be formed on the top side surface of the portable device 100, forallowing an earphone to be inserted.

The input device 168 may be provided into the bottom side surface of theportable device 100. The input device 168 may be inserted and keptinside the portable device 100. When the input device 168 is used, theinput device 168 is extended and detached from the portable device 100.

FIG. 4 illustrates an input device for providing a vibration effect andan interior sectional view of a touch screen according to an embodimentof the present invention.

Referring to FIG. 4, the touch screen 190 includes a display panel 440,a first touch panel 450, and a second touch panel 460. The display panel440 may be an LCD panel or an Active Matrix Organic Light Emitting Diode(AMOLED) panel, which displays various images according to the operationstates of the portable device 100, application execution, services, andthe like.

The first touch panel 450 is a capacitive touch panel formed by coatinga thin metal material (for example, Indium Tin Oxide (ITO)) as adielectric material on both surfaces of glass so that current may flowon the glass surfaces. When an input device (for example, a user'sfinger or a pen) touches a surface of the first touch panel 450, acertain amount of charge migrates to the touched position due to staticelectricity and the first touch panel 450 detects the touched positionby sensing a variation in current caused by the charge migration. Thefirst touch panel 450 is capable of sensing all touches that maygenerate static electricity and sensing all touches made by the inputdevice, that is, a finger or pen.

The second touch panel 460 is an ElectroMagnetic Resonance (EMR) touchpanel including an electromagnetic induction coil sensor (not shown)having a grid structure in which a plurality of loop coils are arrangedin predetermined first and second directions which are perpendicular toeach other, and an electromagnetic signal processor (not shown) forproviding an alternating signal having a predetermined frequencysequentially to the loop coils of the electromagnetic induction coilsensor. When the input device 168 having a built-in resonant circuit ispositioned in the vicinity of a loop coil of the second touch panel 460,a magnetic field output from the loop coil generates current based onmutual electromagnetic induction in the resonant circuit of the inputdevice 168. Then, an induction field is generated from a coil 510 (seeFIG. 5) of the resonant circuit in the input device 168 and the secondtouch panel 460 detects the induction field in loop coils placed in areception state. Therefore, the second touch panel 460 senses either thehovering position or touched position of the input device 168 and theheight h of a pen tip 430 of the input device 168 above the portabledevice 100. The height h may vary according to the capabilities orconfiguration of the portable device 100. The second touch panel 460 maysense the hovering and touch of any input means that can generatecurrent based on electromagnetic induction.

In accordance with an embodiment of the present invention, it is assumedthat the second touch panel 460 is dedicated to sensing the hovering ortouch of the input device 168. The input device 168 may be referred toas an electromagnetic pen or an EMR pen. The input device 168 may have adifferent configuration from a general pen that does not include aresonant circuit, sensed by the first touch panel 450. The input device168 may include a button 420 for changing an electromagnetic inductionvalue generated by the coil inside the pen body in the vicinity of thepen tip 430. The input device 168 will be described later in detail withreference to FIG. 5.

The touch screen controller 195 may include a first touch panelcontroller and a second touch panel controller. The first touch panelcontroller converts an analog signal corresponding to a sensed fingertouch or pen touch, received from the first touch panel 450 to a digitalsignal (for example, X, Y and Z coordinates) and provides the digitalsignal to the controller 110. The second touch panel controller convertsan analog signal corresponding to the sensed hovering or touch of theinput device 168 from the second touch panel 460 to a digital signal andprovides the digital signal to the controller 110. The controller 110controls the display panel 440, the first touch panel 450, and thesecond touch panel 460 using the digital signals received from the firstand second touch panel controllers. For example, the controller 110 maydisplay a predetermined screen on the display panel 440 in response tothe finger touch or pen touch or in response to the hovering or touch ofthe input device 168.

In accordance with an embodiment of the present invention, therefore,the first touch panel 450 senses a user's finger touch or pen touch andthe second touch panel 460 senses the hovering or touch of the inputdevice 168 in the portable device 100. The controller 110 maydistinguish the finger touch or pen touch from the hovering or touch ofthe input device 168. While only one touch screen is shown in FIG. 4,the present invention is not limited to a single touch screen and mayhave a plurality of touch screens. Each touch screen may be engaged withone housing by a hinge or a plurality of touch screens may be mounted ina single housing in the portable device 100. As illustrated in FIG. 4,each touch screen may include a display panel and at least one touchpanel.

FIG. 5 is a block diagram of an input device according to an embodimentof the present invention. Referring to FIG. 5, the input device 168 maybe connected to the portable device 100, another portable device, aportable phone, a smartphone, a tablet PC, and an external serverthrough a short-range communication unit 540. The input device 168 mayinclude a pen controller 530, the short-range communication unit 540,the coil 510, the pen tip 430, the pen button 420, a speaker 560, thevibration device 520, a pen memory 570, and a battery 550.

The pen controller 530 controls the short-range communication unit 540,the coil 510, the pen tip 430, the pen button 420, the speaker 560, thevibration device 520, the pen memory 570, and the battery 550. The pencontroller 530 provides overall control to the input device 168,controls the components 520 to 560 of the input device 168, and performsa data processing function. If the pen tip 430 is located at a position(e.g. 20 mm or lower) where a touch on the touch screen or a hoveringabove the touch screen 190 may be detected, the pen controller 530analyzes a control signal received from the portable device 100 throughthe short-range communication unit 540 and controls a vibration periodand a vibration strength of the vibration device 520 of the input device168 by a control signal. The pen controller 530 controls the battery 550to supply power to the components.

In an embodiment of the present invention, if an object displayed on theportable device 100 is selected by touching the object or hovering abovethe object with the input device 168 and then the button 420 is pressedby the user, the pen controller 530 may control transmission of a copycommand requesting copy of the object to a copy target through theshort-range communication unit 540. The pen controller 530 controlsreception of a part of copy information corresponding to the copycommand from the portable device 100 through the short-rangecommunication unit 540. The copy information may include object datacorresponding to the copy target object, a file name, a file size, afile type, a file storing position, and a copy time. Further, the pencontroller 530 may control reception of a part of copy informationcorresponding to the copy command from an external server through theshort-range communication unit 540. One or more speakers 560 may bedisposed in a housing of the input device 168.

The short-range communication unit 540 may include one of a WLAN moduleand a short-range communication module using a 2.4 GHz band. Theshort-range communication unit 540 may also include both the WLAN moduleand the short-range communication module. The short-range communicationunit 540 may be connected to the portable device 100 and the externalserver under the control of the pen controller 530.

In an embodiment of the present invention, the short-range communicationunit 540 may be paired with the portable device 100 having theshort-range communication module 132 and thus transmits and receivescontrol signals and data to and from the portable device 100. Theshort-range communication unit 540 receives a control signal from theportable device 100 and transmits the control signal to the pencontroller 530. The short-range communication unit 540 analyzes acontrol signal received from the portable device 100. While theshort-range communication unit 540 uses Bluetooth in the embodiment ofthe present invention, the short-range communication unit 540 may bereplaced with or used together with a short-range communication unitthat can establish a communication channel within a short range andtransmit and receive a signal through the communication link by ZigBee,Ultra Wide Band (UWB), or Radio Frequency Identifier (RFID).

The coil 510 creates an induced magnetic field by interacting with aloop coil of the second touch panel 460 of the portable device 100. Theportable device 100 receives the induced magnetic field generated fromthe coil 510 and detects a hovering position or touch position of theinput device 168 and the height of the pen tip 430 of the input device168 above the touch screen 190 based on the induced magnetic field.

When the user presses the pen button 420, the pen button 420 may changean electromagnetic induction value generated from the coil 510. The penbutton 420 may include a physical button or a touch button.

The speaker 560 may output various sound sources stored in the penmemory 570 under the control of the pen controller 530. In an embodimentof the present invention, the speaker 560 outputs an auditory feedbackcorresponding to a control command received from the portable device 100in response to a copy command generated from the button 420. The speaker560 may output an auditory feedback corresponding to a control commandreceived from the portable device 100 in response to a paste commandgenerated from the button 420. In addition, the speaker 560 may output asound corresponding to a vibration period and/or a vibration strength ofthe pen vibration device 520. The speaker 560 may output a soundcorresponding a first control signal and/or a second control signaloutput from the input device 168, substantially simultaneously withsound output of the speaker 163 of the portable device 100 (for example,the time interval between sound outputs of the speakers 163 and 560 is 5ms or shorter) or within a predetermined time (for example, 20 ms) aftersound output of the speaker 163.

The vibration motor 520 converts an electrical signal to a mechanicalvibration under the control of the pen controller 530.

In an embodiment of the present invention, the vibration device 520 maybe activated in response to a control signal received from the portabledevice 100 and provide a tactile feedback to the user. The vibrationdevice 520 may vibrate the whole or part of the input device 168.

The pen memory 570 stores input/output signals or data in correspondencewith operations of the short-range communication unit 540, the coil 510,the pen button 420, the speaker 560, the vibration device 520, and thebattery 550 under the control of the controller 530.

In an embodiment of the present invention, the pen memory 570 storesdevice information about the input device 168. For example, the deviceinformation may include a model name, a unique device ID, a remainingmemory capacity, information about the presence or absence of objectdata, a Bluetooth version, or a Bluetooth profile. In addition, the penmemory 570 may store one or more vibration waveforms that vibrate thevibration device 520 based on a control signal received from theportable device 100.

The battery 550 supplies power to the components of the input device 168under the control of the pen controller 530. If the remaining amount ofthe battery 550 is not sufficient, the battery 550 may be charged by acable or wirelessly.

In an embodiment of the present invention, a control signal is receivedthrough the short-range communication unit 540 of the input device 168under the control of the pen controller 530. The control signal isreceived from the portable device 100. The input device 168 may receivethe control signal periodically for a predetermined time period or untilhovering is terminated. The control signal may include, for example, atleast one of information for activating vibration mode, informationindicating a vibration strength of the input device 168, information fordeactivating the vibration mode, and information indicating a totalvibration time of the vibration device 520.

At least one component may be added to or removed from the components ofthe input device 168 illustrated in FIG. 5 according to the capabilitiesof the input device 168. It will be readily understood by those skilledin the art that the positions of the components may be changed accordingto the capabilities or configuration of the portable device 100.

An overall operation for generating vibration in the above-describedportable device 100 and input device 168 according to the presentinvention will be described below with reference to FIG. 6. FIG. 6 is aflowchart illustrating an operation for generating vibration in theportable device 100 according to an embodiment of the present invention.

Referring to FIG. 6, the controller 110 of the portable device 100detects a user input corresponding to a gesture made by the input device168 in step 601. The user input corresponding to the gesture of theinput device 168 may be a touch input or a hovering input.

In step 603, the controller 110 detects an action attribute of theportable device 100 corresponding to the user input. The actionattribute may include information about an operation state of theportable device 100 at the moment the user input is generated. Theaction attribute may include information related to an application thatis being executed in the portable device 100 at the moment the userinput is generated. The action attribute may also include a commandcorresponding to the user input. The application information may includeat least one of identification information about the ongoingapplication, information about a progress state of the application, andinformation about an object selected by the user input from among atleast one object displayed on the touch screen 190 along with theprogress of the application. The command corresponding to the user inputmay be determined according to the operation state of the portabledevice 100 or the ongoing application at the moment the user input isgenerated.

The controller 110 determines a first vibration to be output from theinput device 168 and a second vibration to be output from the portabledevice 100 according to the action attribute in step 605. In addition,the controller 110 determines generation times of the first and secondvibrations according to the action attribute.

In step 607, the controller 110 transmits a control signal correspondingto the first vibration to the input device 168 and controls output ofthe second vibration from the portable device 100 by controlling thevibration motor 164.

For example, the controller 110 controls generation of the firstvibration from the input device 168 while the command corresponding tothe user input is being executed, discontinues generation of the firstvibration from the input device 168 upon completion of the commandexecution, and then controls generation of the second vibration from theportable device 100. The controller 110 may also control generation ofthe second vibration from the portable device 100 while the commandcorresponding to the user input is being executed, discontinuegeneration of the second vibration from the portable device 100 uponcompletion of the command execution, and then control generation of thefirst vibration from the input device 168. The controller 110 mayfurther control simultaneous generation of the first vibration from theinput device 168 and the second vibration from the portable device 100.

In another example, the controller 110 controls generation of the firstvibration from the input device 168 as a feedback for the sensed userinput and, upon completion of execution of the command corresponding tothe user input, controls generation of the second vibration from theportable device 100 as a feedback for the completion of the commandexecution. The controller 110 may also control generation of the secondvibration from the portable device 100 as a feedback for the sensed userinput and, upon completion of execution of the command corresponding tothe user input, may control generation of the first vibration from theinput device 168 as a feedback for the completion of the commandexecution.

FIG. 7 is a flowchart illustrating an operation of the controller 110during execution of an application according to another embodiment ofthe present invention.

Referring to FIG. 7, the controller 110 detects a user inputcorresponding to a gesture made by the input device 168 in step 701. Instep 703, the controller 110 detects an application attribute includingapplication information and a command that correspond to the user input.The controller 110 determines a first vibration to be output from theinput device 168 and a second vibration to be output from the portabledevice 100 according to a combination of the application information andthe command in step 705. Further, the controller 110 determinesgeneration times of the first and second vibrations according to thecombination of the application information and the command.Subsequently, the controller 110 transmits a control signalcorresponding to the first vibration to the input device 168 and outputsthe second vibration from the portable device 100 based on theapplication information along with execution of the command in step 707.

Now, examples of vibration control during execution of an applicationwill be described below with reference to FIGS. 8 to 22B.

First, operations for controlling vibration during execution of a gameapplication will be described with reference to FIGS. 8 to 12. FIG. 8 isa flowchart illustrating an operation for controlling vibration duringexecution of a game application in the portable device 100 according toan embodiment of the present invention. In the illustrated case of FIG.8, it is assumed that a command to move a target object provided by thegame application is detected. FIGS. 9A and 9B illustrate vibrationgeneration during execution of a baseball game application, FIGS. 10Aand 10B illustrate vibration generation during execution of a slingshotgame application, FIGS. 11A and 11B illustrate vibration generationduring execution of a billiards game application, and FIG. 12illustrates vibration generation during execution of a fishing gameapplication.

Upon execution of a game application, an image is displayed in real timealong with the progress of the game application on the touch screen 190of the portable device 100. The image may be selected by the inputdevice 168 and may include at least one visual target object that can bemanipulated. As the user selects and manipulates a target object usingthe input device 168, the game application may proceed.

For example, upon execution of the baseball game application, theportable device 100 displays a baseball game image as illustrated inFIG. 9A. The baseball game image may include a baseball 751corresponding to a visual target object. The user may throw the baseball751 as a pitcher or hit the baseball 751 as a hitter according to a gamerule in the baseball game by manipulating the input device 168. In FIG.9A, the user selects and manipulates the baseball 751 by playing therole of a hitter, by way of example.

Referring to FIG. 8, the controller 110 determines whether a user inputcorresponding to a gesture made by the input device 168 has beendetected during execution of the game application in step 801. Upondetection of the user input, the controller 110 determines whether theuser input is for selecting a target object at a first position in step803. If the user input is for selecting the target object at the firstposition, the procedure goes to step 807 and otherwise, the proceduregoes to step 805 to perform a normal operation of the portable device100.

In step 807, the controller 110 detects application information, targetobject information, and a command to move the target object, in relationto execution of the game application at the moment the user input isgenerated.

For example, in FIG. 9A, the user, as a hitter, touches the baseball 751using the input device 168 at an appropriate timing when the baseball751 approaches home plate, to hit the baseball 751. Accordingly, thecontroller 110 senses that an input to select the baseball 751 has beengenerated at a position of the touch input. Then the controller 110detects application information related to the progress state of thebaseball game application at the moment the touch input is generatedthrough the input device 168. Further, the controller 110 may determinea speed and direction of the baseball 751 according to the position andtime of the touch input and detect object information including thedetermined speed and direction of the baseball 751. The controller 110detects a move command corresponding to the touch input.

Referring to FIG. 8 again, the controller 110 determines a firstvibration to be output from the input device 168 and a second vibrationto be output from the portable device 100 according to a combination ofthe application information, the target object information, and the movecommand in step 809. The controller 110 transmits a control signalcorresponding to the first vibration to the input device 168 in step 811and outputs the second vibration through the portable device 100 whenthe target object is moved to a second position according to the movecommand in step 813.

In the example of FIG. 9A, the controller 110 determines the firstvibration to be generated from the input device 168 to indicate that theuser has selected the target object, according to the combination of theapplication information, the object information, and the move commandthat have been detected along with user selection of the baseball 751 atthe first position corresponding to the target object by the inputdevice 168. The controller 110 moves the baseball 751 according to themove command. The controller 110 determines the second vibration that isto be generated from the portable device when the baseball 751 is hit bythe bat, such as when the baseball is put into play and bumps against afence, flies over the fence, falls to the ground, or is caught by adefensive player as the result of the movement, that is, when thebaseball 751 reaches the second position as the result of the movement.Subsequently, to provide a feedback for the selection of the baseball751 to the user, the controller 110 transmits a control signalcorresponding to the first vibration to the input device 168. Therefore,in FIG. 9A, the input device 168 receives the control signal andaccordingly generates the first vibration. At the same time, referringto FIG. 9B, the controller 110 provides an image of a flying ball hit bythe bat according to the move command and controls generation of thesecond vibration from the portable device 100 at the moment when theflying ball 751 bumps against an opposite score board (the secondposition), as illustrated in FIG. 9B.

In the slingshot game application of FIGS. 10A and 10B, for example,upon generation of an input to select a stone 761 at a first position asa target object by the input device 168, the controller 110 controlsgeneration of a first vibration from the input device 168 bytransmitting a control signal corresponding to the first vibration tothe input device 168, as illustrated in FIG. 10A. As illustrated in FIG.10B, the controller 110 controls generation of a second vibration fromthe portable device 100 at the moment when the stone 762 launched fromthe sling-shot hits a target (at a second position).

In the billiards game application of FIGS. 11A and 11B, for example,upon generation of an input to select a ball 771 at a first position asa target object by the input device 168, the controller 110 controlsgeneration of a first vibration from the input device 168 bytransmitting a control signal corresponding to the first vibration tothe input device 168, as illustrated in FIG. 11A. As illustrated in FIG.11B, the controller 110 controls generation of a second vibration fromthe portable device 100 at the moment when the ball 772 rolls to asecond position.

In another example, upon generation of a user input to select a firsttarget object at a first position, the controller 110 transmits acontrol signal corresponding to a first vibration to the input device168 and controls generation of a second vibration from the portabledevice 100, when a second target object is displayed at a secondposition.

Referring to FIG. 12, for example, upon execution of the fishing gameapplication, an image of a fishing spot is displayed on the touch screen190. When the user selects a fishing rod 781 at a first position bymeans of the input device 168, the controller 110 detects applicationinformation, object information such as a selection time, and selectionstrength of the fishing rod 781, and a catch command in relation to theprogress of the fishing game application. The controller 110 determinesa first vibration to be output from the input device and a secondvibration to be output from the portable device 100 according to acombination of the detected information and command. To provide feedbackfor the selection of the fishing rod 781, the controller 110 transmits acontrol signal corresponding to the first vibration to the input device168. Then the controller 110 provides an image of a fish being caughtand controls generation of the second vibration from the portable device100 at the moment when the caught fish corresponding to a second targetobject shows up above a water surface (a second position) 782.

With reference to FIGS. 13 to 17, a description will be given of anoperation for controlling vibration in the process of copying an imageobject displayed on the touch screen 190 and pasting the copied imageobject during execution of an image application that allows imageediting. FIG. 13 is a flowchart illustrating an operation of a portabledevice upon execution of an image application according to an embodimentof the present invention, and FIGS. 14A and 14B illustrate executionscreens of an image application according to an embodiment of thepresent invention. FIG. 15 is a flowchart illustrating an operation of aportable device upon execution of an image application according to anembodiment of the present invention, and FIGS. 16A and 16B illustrateexecution screens of an image application according to an embodiment ofthe present invention. FIG. 17 illustrates an exemplary method forproviding a feedback in a portable device according to an embodiment ofthe present invention.

Referring to FIG. 13, upon execution of an image application, thecontroller 110 displays an object on the touch screen 190 in step 901.For example, an image object 841 is displayed as illustrated in FIG.14A. The user may select the displayed image object 841 by touching theimage object 841 using the input device 168. Accordingly, the controller110 detects a user input corresponding to a gesture made by the inputdevice 168 in step 903 and selects the image object displayed at aposition of the user input in step 905. The user may enter a copycommand to the portable device 100 by pressing the pen button 420 of theinput device 168. The user also may touch the image object 841, whilepressing the pen button, to thereby enter the copy command at the momentof touching the image object 841.

Therefore, the controller 110 detects whether the copy command isentered in step 907 and determines a first vibration to be output fromthe input device 168 and a second vibration to be output from theportable device 100 in response to the copy command in step 911. If thecopy command is not entered in step 907, the controller performs anormal operation in step 909.

The controller 110 may map pre-stored device information about the inputdevice 168, object information (for example, a file name, a file size, afile type, a file extension, a file stored position, or the like) aboutthe selected object, and the copy command and may store the mappedinformation as copy information in a temporary storage area or clipboard of the image application. The controller 110 may provide a visualfeedback (for example, flash, a video, or the like) on the touch screen190 or an auditory feedback (for example, a sound) through the speaker163, in response to the object selection.

In step 913, the controller 110 controls generation of the secondvibration from the portable device 100 while the selected object isbeing copied. To provide a visual feedback for the progress of copyingthe selected object, the controller 110 may display a visual effect ofthe image object being contracted gradually or a visual effect of theimage object being sucked into a pipette.

Upon completion of copying of the selected object in step 915, thecontroller 110 transmits a control signal corresponding to the firstvibration to the input device 168 so as to generate the first vibrationfrom the input device 168 in step 917. Upon completion of copying of theselected object 841, the copied image object 841 may no longer bedisplayed in the portable device 100 as illustrated in FIG. 14B. Inanother embodiment of the present invention, the copied image object 841may still be displayed.

In step 919, the controller 110 determines whether the remainingcapacity of the pen memory 570 of the input device 168 is sufficient.The controller 110 may compare the remaining capacity of the pen memory570 of the input device 168 with a file size included in the objectinformation about the copied object using the pre-stored deviceinformation about the input device 168. The controller 110 may transmitone of the copy information including the image object and copyinformation except for object data of the object to the input device 168according to the comparison result.

If the remaining capacity of the pen memory 570 is larger than the filesize of the image object, the controller 110 controls transmission ofthe copy information including the image object to the input device 168in step 921. The copy information may include the object data, the filename, the file size, the file type, the file stored position, a copytime, and the like.

On the other hand, if the remaining capacity of the pen memory 570 issmaller than the file size of the image object in step 919, thecontroller 110 may not transmit the copy information including the imageobject to the input device 168. Therefore, in step 923 the controller110 controls transmission of the object data to an external server usinga Universal Resource Locator (URL) of the external server of amanufacturer stored in the memory 175 through the mobile communicationmodule 120 or the sub-communication module 130. The controller 110 maymap the URL of the external server to the copy information and store themapped information in the memory 175. In other words, the controller 110transmits the copy information including the object data to the externalserver and transmits copy information that includes the URL of theexternal server, without the object data to the input device 168.

FIG. 15 illustrates an operation for pasting the copied object. Duringthe application in progress, the controller 110 detects a user inputcorresponding to a gesture made by the input device 168 in step 1001 anddetermines whether a paste command has been detected in step 1003. Ifthe paste command is not detected in step 1003, the controller 110performs a normal operation in step 1005.

Referring to FIG. 16A, the user may select a paste position by touchingan area other than the image object 841 on a screen provided by theimage application using the input device 168. Thereafter, the controller110 detects the user input corresponding to the gesture of the inputdevice 168 in step 1001. Then the user may enter the paste command tothe portable device 100 by pressing the pen button 420 of the inputdevice 168. Otherwise, to enter the paste command at the moment oftouching an area other than the image object, the user may touch thearea other than the image object, while pressing the pen button 420.

Upon detection of the paste command, the controller 110 acquires thecopy information in step 1007. The copy information may be acquired fromthe input device 168 or the external server. That is, the controller 110may receive the copy information stored in the procedure of FIG. 13 fromthe input device 168 by short-range communication. If the copyinformation stored in the pen memory 570 of the input device 168includes the object data of the image object, the controller 110displays the received object data in step 1011 as described below. Onthe other hand, if the copy information acquired from the pen memory 570of the input device 168 includes the URL of the external server at whichthe object data is stored, the controller 110 may acquire the objectdata of the image object from the external server.

In step 1009, the controller 110 determines a first vibration to beoutput from the input device 168 and a second vibration to be outputfrom the portable device 100 according to the paste command.

While the image object is being displayed at the position of the userinput, the controller 110 transmits a control signal corresponding tothe first vibration to the input device 168 in step 1011. To provide avisual feedback for the pasting of the image object, the controller 110may display the image object gradually increasing in size. Thecontroller 110 also may display the image object in the form of liquiddropping from a pipette.

The controller 110 then determines if the display of the image object iscomplete in step 1013. Upon completion of displaying of the image objectin step 1013, the controller 110 controls generation of the secondvibration from the portable device 100 in step 1015, as illustrated inFIG. 16B.

In an embodiment of the present invention, the copy and paste functionsmay be executed between a plurality of portable devices, as illustratedin FIG. 17. Referring to FIG. 17, a plurality of portable devices 100and 100 a may provide feedback for copy and paste using the input device168. If the remaining memory capacity of the input device 168 issufficient, the controller 110 of the first portable device 100transmits control information for the object 841 selected by the inputunit 168 and copy information including the object data of the object841 to the input device 168 by short-range communication, for example,Bluetooth Serial Port Profile (SPP). A controller of the second portabledevice 100 a may be aware that the input device 168 has the copyinformation by discovery and pairing with the input device 168. Thecontroller of the second portable device 100 a receives the controlinformation and the copy information according to a paste command fromthe input device 168 by Bluetooth SPP.

If the remaining memory capacity of the input device 168 is notsufficient, the controller of the first portable device 100 transmitsthe control information for the object 841 selected by the input unit168 and copy information except for the object data to the input device168 by Bluetooth SPP. The controller 110 of the first portable device100 may transmit the object data to an external server through themobile communication module 120 or sub-communication module 130. Inaddition, the controller of the first portable device 100 may transmitthe object data to the second portable device 100 a through the mobilecommunication module 120 or sub-communication module 130.

The controller of the second portable device 100 a may be aware that theinput device 168 has the control information and the copy information bydiscovery and pairing with the input device 168. The controller of thesecond portable device 100 a receives the control information and thecopy information according to a paste command from the input device 168by Bluetooth SPP. The controller of the second portable device 100 areceives the object data from the external server through acommunication module. The controller of the second portable device 100 aalso may receive the object data from the first portable device 100through the communication module.

Vibrations are generated in the same manner for one or more portabledevices, and thus a vibration generation method for a plurality ofportable devices will not be provided herein to avoid redundancy.

With reference to FIGS. 18 to 20B, an example of generating vibrationsduring execution of a drawing application will be described. The drawingapplication refers to an application that enables a user to draw usingthe input device 168. FIGS. 18 and 19 are flowcharts illustratingoperations of a portable device during execution of a drawingapplication according to embodiments of the present invention. FIGS. 20Aand 20B illustrate screens displayed along with execution of a drawingapplication according to an embodiment of the present invention.

Upon execution of the drawing application, the portable device 100provides a layer on which the user may draw using the input device 168.Then the portable device 100 displays a drawing object in real time at aposition of a user input by tracing the user input applied by the inputdevice 168. Thus, a trajectory drawn by the user input is displayed.

Referring to FIG. 18, during execution of a drawing application, thecontroller 110 determines whether a user input corresponding to agesture made by the input device 168 has been detected in step 1101.Upon generation of the user input, the controller 110 detects whether adraw command is input in step 1103. If a draw command is input, thecontroller 110 determines a first vibration to be output from the inputdevice 168 and a second vibration to be output from the portable device100 in step 1107. If a draw command is not input in step 1103, thecontroller 110 performs a normal operation in step 1105. In step 1109,the controller 110 displays a drawing object at the position of acontinuous user input by tracing the continuous user input and transmitsa control signal corresponding to the first vibration to the inputdevice 168.

Referring to FIG. 20A, if the user draws a heart shape using the inputdevice 168, the heart-shaped drawing object is displayed in real time onthe touch screen 190. While the drawing object is being displayed, theinput device 168 generates the first vibration.

Referring to FIG. 18 again, if the user input is discontinued in step1111, the controller 110 controls generation of the second vibrationfrom the portable device 100 in step 1113. If the user input continuesin step 1111, the controller 110 maintains step 1109.

The drawing object created in the above operation may be stored as ananimation object. An animation object is generated by storing theprocess of drawing and displaying an object in correspondence with auser input as a flash file or a video file. For example, as the userdraws a heart using the input device 168, the process of drawing anddisplaying the heart on the touch screen 190 may be stored as a flashfile or a video file. This is called an animation object.

The animation object may be transmitted in a message to another portabledevice. Upon receipt of the animation object, the portable device playsback the animation object. That is, the animation object correspondingto the heart-shaped drawing object may be included in a message andtransmitted to another portable device and the portable device playsback the animation object upon user selection.

FIG. 19 is a flowchart illustrating an operation for receiving a messageincluding an animation object and playing back the animation object.Referring to FIG. 19, with a drawing application executed, upon receiptof an animation message, the controller 110 displays an animation objectand a play icon in step 1201. For example, a heart-shaped animationobject 1051 and a play icon 1052 may be displayed as illustrated in FIG.20B.

Upon generation of an input to select the play icon by the user in step1203, the controller 110 displays the process of drawing the object byplaying back the animation object in animation and outputs vibration inthe portable device 100 during playback of the animation in step 1207.If the play icon is not selected, the controller 110 performs a normaloperation in step 1205.

In FIG. 20B, for example, if the heart-shaped animation object 1051 isdisplayed and then an input to select the play icon 1052 is generated bythe user, a visual effect of drawing the heart-shaped object isdisplayed. The portable device 100 outputs vibration until theheart-shaped object is completely drawn.

With reference to FIGS. 21, 22A, and 22B, vibration generation duringexecution of a map application will be described. FIG. 21 is a flowchartillustrating an operation of a portable device upon execution of a mapapplication according to an embodiment of the present invention, andFIGS. 22A and 22B illustrate execution screens of a map applicationaccording to an embodiment of the present invention.

Upon execution of the map application, the portable device 100 displaysa map on the touch screen 190 in step 1301. For example, a map may bedisplayed as illustrated in FIG. 22A. The user may select a point on themap and scale up or down the map to enlarge a specific area around theselected point or view a larger area around the selected point. In anembodiment of the present invention, a zoom-in command to enlarge apartial area of a map or a zoom-out command to display a larger area onthe map by contracting a displayed area of the map may be input throughthe input device 168. For example, if the user selects an intended pointfor enlargement on a displayed map using the input device 168 andpresses the button 420 of the input device 168 once, it may bedetermined that a zoom-in command has been generated. If the userselects an intended point on the displayed map using the input device168 and presses the button 420 of the input device 168 twice, it may bedetermined that a zoom-out command has been generated. FIG. 21illustrates an operation of the portable device 100, when a zoom-incommand is input.

Referring to FIG. 22A, the user may touch an intended position forenlargement on a displayed map with the input device 168 or may hoverthe input unit 168 above the intended position for enlargement.

Referring to FIG. 21 again, the controller 110 detects a user inputcorresponding to a gesture made by the input device 168 in step 1303.The user may provide a zoom-in command to the portable device 100 bypressing the pen button 420 of the input device 168. To provide thezoom-in command at the moment of touching the map, the user also maytouch the map, while pressing the pen button 420.

Thus, upon detection of the zoom-in command in step 1305, the controller110 selects a specific area around the position of the user input on themap according to the zoom-in command in step 1309. The size of the areamay be predetermined. For example, an enlarged area 1121 may bedisplayed as illustrated in FIG. 22A. If the zoom-in command is notdetected in step 1305, the controller 110 performs a normal operation instep 1307.

In step 1311, the controller 110 determines a first vibration to beoutput from the input device 168 and a second vibration to be outputfrom the portable device 100 according to the zoom-in command. Further,the controller 110 may determine generation times of the first andsecond vibrations.

Subsequently, the controller 110 transmits a control signalcorresponding to the first vibration to the input device 168, whiledisplaying the specific area scaled up at a predetermined scale in step1313. Upon completion of the enlarged display, the controller 110controls generation of the second vibration from the portable device 100in step 1315.

That is, when the map is zoomed-in around the enlarged area 1121selected in FIG. 22A as illustrated in FIG. 22B, the portable device 100generates vibration.

If the command detected in step 1305 is a zoom-out command, thecontroller 110 scales down the map at a predetermined scale and thusdisplays a larger area on the map. While displaying the larger area onthe map, the controller 110 transmits a control signal corresponding tothe first vibration to the input device 168 in step 1313. Uponcompletion of displaying of the scaled-down map, the controller 110 maycontrol generation of the second vibration from the portable device 100in step 1315.

FIGS. 23 and 24 illustrate vibration waveforms generated from the inputdevice 168 and the portable device 100, respectively. Specifically, FIG.23 illustrates the vibration waveform of a vibration to be generatedfrom the input device 168 and FIG. 24 illustrates the vibration waveformof a vibration to be generated from the portable device 100.

Referring to FIGS. 23 and 24, the vibration waveform generated from theinput device 168 has an input value of about 0.5V, whereas the vibrationwaveform generated from the portable device 100 has an input value ofabout 1V. The vibration of the input device 168 may be set to be weakerthan the vibration of the portable device 100.

As described above, since the input device 168 and the portable device100 generate vibrations organically in response to one user input, auser can feel a realistic sense of manipulation.

The method and apparatus for controlling vibration according to thepresent invention may be implemented as computer-readable code in acomputer-readable recording medium. The computer-readable recordingmedium may include any kind of recording device storingcomputer-readable data. Examples of the recording medium may includeRead Only Memory (ROM), Random Access Memory (RAM), optical disk,magnetic tape, floppy disk, hard disk, non-volatile memory, and thelike, and may also include the medium that is implemented in the form ofcarrier waves (for example, transmission over the Internet). Inaddition, the computer-readable recording medium may be distributed overthe computer systems connected over the network, and computer-readablecodes may be stored and executed in a distributed manner.

As is apparent from the foregoing description, when a UI is manipulatedin a portable device equipped with at least one touch screen, vibrationcan be generated organically between an input device and the portabledevice.

While the invention has been shown and described with reference tocertain embodiments thereof, it will be understood by those skilled inthe art that various changes in form and details may be made thereinwithout departing from the spirit and scope of the invention as definedby the appended claims and their equivalents.

What is claimed is:
 1. A method for controlling vibration in a portabledevice, the method comprising: detecting a user input corresponding to agesture made on a touch screen by an input device; detecting an actionattribute of the portable device corresponding to the user input;determining a first vibration to be output from the input device and asecond vibration to be output from the portable device according to theaction attribute; and controlling output of the first vibration from theinput device and output of the second vibration from the portable deviceaccording to the action attribute.
 2. The method of claim 1, whereindetermining the first vibration and the second vibration comprises:determining generation times of the first and second vibrationsaccording to the action attribute.
 3. The method of claim 2, wherein theaction attribute includes at least one of application information aboutan application being executed at the moment of detecting the user inputand a command corresponding to the user input.
 4. The method of claim 3,wherein the application information includes at least one of applicationidentification information, state information indicating a progressstate of the application, and information about an object selected bythe user input.
 5. The method of claim 3, wherein the command isdetermined according to an operation state of the portable device or theapplication being executed at the moment of generating the user input.6. The method of claim 3, wherein the action attribute includesapplication information related to a progress of a game applicationbeing executed at the moment of detecting the user input, informationabout a target object selected by the user input from among objectsdisplayed on the touch screen, and a move command for the target object,and wherein controlling the output comprises: upon generation of theuser input for the target object at a first position, transmitting acontrol signal corresponding to the first vibration to the input device;and if the target object is moved to a second position and displayed atthe second position on the touch screen according to the move command,generating the second vibration from the portable device.
 7. The methodof claim 3, wherein the action attribute includes information about anobject selected by the user input from among objects displayed on thetouch screen and a copy command for the selected object, and whereincontrolling the output comprises: generating the second vibration fromthe portable device while the selected object is being copied; and uponcompletion of copying of the selected object, transmitting a controlsignal corresponding to the first vibration to the input device.
 8. Themethod of claim 3, wherein the action attribute includes positioninformation corresponding to the user input and a paste command for acopied object, and wherein controlling the output comprises:transmitting a control signal corresponding to the first vibration tothe input device, while the copied object is being displayed at aposition corresponding to the position information on the touch screenaccording to the paste command; and upon completion of displaying of thecopied object, generating the second vibration from the portable device.9. The method of claim 3, wherein the action attribute includesinformation about a drawing application being executed at the moment ofdetecting the user input and a draw command, and wherein controlling theoutput comprises: transmitting a control signal corresponding to thefirst vibration to the input device, while a drawing object is beingdisplayed at a position of the user input on the touch screen accordingto the draw command; and upon discontinuation of the user input,generating the second vibration from the portable device.
 10. The methodof claim 3, wherein the action attribute includes information about amap application being executed at the moment of detecting the user inputand a zoom command, and wherein controlling the output comprises:selecting a predetermined area around a position of the user input on amap displayed on the touch screen according to the zoom command;transmitting a control signal corresponding to the first vibration tothe input device, while the predetermined area is being displayed andscaled at a predetermined scale on the map; and upon completion ofdisplaying of the scaled area on the map, generating the secondvibration from the portable device.
 11. The method of claim 10, whereinthe zoom command is a zoom-in command, and the scaled area is ascaled-up area.
 12. The method of claim 10, wherein the zoom command isa zoom-out command, and the scaled area is a scaled-down area.
 13. Aportable device comprising: a touch screen configured to display atleast one object under the control of a controller; a communicationmodule configured to conduct short-range communication with an inputdevice under the control of the controller; and the controllerconfigured to detect a user input corresponding to a gesture made on thetouch screen by the input device, to detect an action attribute of theportable device corresponding to the user input, to determine a firstvibration to be output from the input device and a second vibration tobe output from the portable device according to the action attribute, tocontrol output of the first vibration from the input device bytransmitting a control signal corresponding to the first vibration tothe input device according to the attribute action through thecommunication module, and to control output of the second vibration fromthe portable device according to the action attribute.
 14. The portabledevice of claim 13, wherein the controller is configured to determinegeneration times of the first and second vibrations according to theaction attribute.
 15. The portable device of claim 14, wherein theaction attribute includes at least one of application information aboutan application being executed at the moment of detecting the user inputand a command corresponding to the user input.
 16. The portable deviceof claim 15, wherein the application information includes at least oneof application identification information, state information indicatinga progress state of the application, and information about an objectselected by the user input.
 17. The portable device of claim 16, whereinthe command is determined according to an operation state of theportable device or the application being executed at the moment ofgenerating the user input.
 18. The portable device of claim 15, whereinthe action attribute includes application information related to aprogress of a game application being executed at the moment of detectingthe user input, information about a target object selected by the userinput from among objects displayed on the touch screen, and a movecommand for the target object, and wherein upon generation of the userinput for the target object at a first position, the controllertransmits a control signal corresponding to the first vibration to theinput device, and if the target object is moved to a second position anddisplayed at the second position on the touch screen according to themove command, the controller controls generation of the second vibrationfrom the portable device.
 19. The portable device of claim 15, whereinthe action attribute includes information about an object selected bythe user input from among objects displayed on the touch screen and acopy command for the selected object, and wherein the controllercontrols generation of the second vibration from the portable devicewhile the selected object is being copied, and upon completion ofcopying of the selected object, the controller transmits a controlsignal corresponding to the first vibration to the input device.
 20. Theportable device of claim 15, wherein the action attribute includesposition information corresponding to the user input and a paste commandfor a copied object, and wherein the controller transmits a controlsignal corresponding to the first vibration to the input device, whilethe copied object is being displayed at a position corresponding to theposition information on the touch screen according to the paste command,and upon completion of displaying of the copied object, the controllercontrols generation of the second vibration from the portable device.21. The portable device of claim 15, wherein the action attributeincludes information about a drawing application being executed at themoment of detecting the user input and a draw command, and wherein thecontroller transmits a control signal corresponding to the firstvibration to the input device, while a drawing object is being displayedat a position of the user input on the touch screen according to thedraw command, and upon discontinuation of the user input, the controllercontrols generation of the second vibration from the portable device.22. The portable device of claim 15, wherein the action attributeincludes information about a map application being executed at themoment of detecting the user input and a zoom command, and wherein thecontroller selects a predetermined area around a position of the userinput on a map displayed on the touch screen according to the zoomcommand, transmits a control signal corresponding to the first vibrationto the input device, while the predetermined area is being displayed andscaled at a predetermined scale on the map, and upon completion ofdisplaying of the scaled area on the map, controls generation of thesecond vibration from the portable device.
 23. The portable device ofclaim 22, the method of claim 9, wherein the zoom command is a zoom-incommand, and the scaled area is a scaled-up area.
 24. The portabledevice of claim 22, the method of claim 9, wherein the zoom command is azoom-out command, and the scaled area is a scaled-down area.